1. Field of the Invention
The present invention relates to systems and methods of data storage and management, and in particular to a method and system for providing a client access to private data disseminable according to privacy rules.
2. Description of the Related Art
Database management systems are used to collect, store, disseminate, and analyze data. These large-scale integrated database management systems provide an efficient, consistent, and secure data warehousing capability for storing, retrieving, and analyzing vast amounts of data. This ability to collect, analyze, and manage massive amounts of information has become a virtual necessity in business today.
The information stored by these data warehouses can come from a variety of sources. One important data warehousing application involves the collection and analysis of information collected in the course of commercial transactions between businesses and consumers. For example, when an individual uses a credit card to purchase an item at a retail store, the identity of the customer, the item purchased, the purchase amount and other related information are collected. Traditionally, this information is used by the retailer to determine if the transaction should be completed, and to control product inventory. Such data can also be used to determine temporal and geographical purchasing trends.
Similar uses of personal data occur in other industries. For example, in banking, the buying patterns of consumers can be divined by analyzing their credit card transaction profile or their checking/savings account activity, and consumers with certain profiles can be identified as potential customers for new services, such as mortgages or individual retirement accounts. Further, in the telecommunications industry, consumer telephone calling patterns can be analyzed from call-detail records, and individuals with certain profiles can be identified for selling additional services, such as a second phone line or call waiting.
Additionally, data warehouse owners typically purchase data from third parties, to enrich transactional data. This enrichment process adds demographic data such as household membership, income, employer, and other personal data.
The data collected during such transactions is also useful in other applications. For example, information regarding a particular transaction can be correlated to personal information about the consumer (age, occupation, residential area, income, etc.) to generate statistical information. In some cases, this personal information can be broadly classified into two groups: information that reveals the identity of the consumer, and information that does not. Information that does not reveal the identity of the consumer is useful because it can be used to generate information about the purchasing proclivities of consumers with similar personal characteristics. Personal information that reveals the identity of the consumer can be used for a more focused and personalized marketing approach in which the purchasing habits of each individual consumer are analyzed to identify candidates for additional or tailored marketing.
Another example of an increase in the collection of personal data is evidenced by the recent proliferation of xe2x80x9cmembershipxe2x80x9d or xe2x80x9cloyaltyxe2x80x9d cards. These cards provide the consumer with reduced prices for certain products, but each time the consumer uses the card with the purchase, information about the consumer""s buying habits is collected. The same information can be obtained in an on-line environment, or purchases with smart cards, telephone cards, and debit or credit cards.
Unfortunately, while the collection and analysis of such data can be of great public benefit, it can also be the subject of considerable abuse. In the case of loyalty programs, the potential for such abuse can prevent many otherwise cooperative consumers from signing up for membership awards or other programs. It can also discourage the use of emerging technology, such as cash cards, and foster continuation of more conservative payment methods such as cash and checks. In fact, public concern over privacy is believed to be a factor holding back the anticipated explosive growth in web commerce. For the foregoing reasons, a privacy-enhanced data warehouse has been developed, as described in the above cross-referenced patent applications.
Data warehouse data models describe data structures and business rules to represent business requirements. Business rules can include privacy rules (which can reflect any combination of corporate privacy policies and legally required privacy policy rules) or other business rules. The logical data model consists of the entities, attributes, and relationships for those data elements stored in the warehouse. The physical data model represents the physical properties of those data elements, such as column data types and constraints, index assignments, and physical storage assignments.
As described in the foregoing patent applications, it is also beneficial to provide convenient access to personal data and privacy preferences to clients. This can be accomplished by client interface modules that allow consumers to access and verify the personal data stored about them in the data warehouse, along with their preferences for the use of that data.
Data warehouse applications that interact with the consumer to store and retrieve data to and from rows and columns within the warehouse, need to know about the tables, attributes, data types and relationships.
Unfortunately, client access applications and client interface modules are often written for the physical data model, but if the data model changes, the application and user interface must change. This can be very time consuming for the application developer.
Another problem occurs when developing consumer access applications that need to apply any data model with personal data. Such applications are general in nature, but must be customized for each installation and data model, thus preventing a turn-key approach.
What is needed is a system and method for providing consumer access to personal data and privacy preferences stored in a suitable data warehouse that can be used for a wide variety of changeable physical data models, changing privacy business rules, and evolving consumer applications. The present invention satisfies that need.
To address the requirements described above, the present invention discloses a method, apparatus, and article of manufacture for providing access and accepting changes to personal information stored in a data warehouse
The method comprises the steps of accepting a privacy information request from a client, retrieving privacy metadata describing the selected privacy information, translating the privacy information request to a data warehouse-compliant query using the privacy information metadata, and transmitting the query to the data warehouse. The apparatus comprises a program storage device tangibly embodying instructions for performing the method steps above.
The apparatus comprises a privacy metadata subsystem, communicatively coupled to a data warehouse for retrieving privacy metadata and a consumer access subsystem communicatively coupled to the data warehouse and the privacy metadata subsystem. The consumer access subsystem accepts a request for privacy information from the client, translates the request to a data warehouse-compliant query, transmits the query to the data warehouse, and forwards data responsive to the query to the client.
The present invention describes a consumer access server and a consumer access application programming interface that use metadata to discover the logical/physical data model and privacy attributes and return the data to the user or consumer. Metadata is descriptive information about the structure and meaning of data and of the applications and processes that manipulate data. It describes the data in the data warehouse, such as table names, attribute names, table relationships, and physical characteristics such as attribute length. Using this information, the consumer access subsystem interprets the data model and privacy attributes, and presents the information to the client application through the application program interface. The application can then dynamically present the correct form or data to the client.